Automated mobile user location determination and events notification

ABSTRACT

A method, system, and/or apparatus for automatically tracking a mobile user using the user&#39;s mobile device. This invention is particularly useful in the field of social media, such as for detecting and tracking the location and activity of a user and her community. The method or implementing software application uses or relies upon location information available on the mobile device from any source, such as cell phone usage and/or other device applications. The social media system can automatically determine a location type and/or user activity from context information. The context information can include current and past location and user and/or community information, time-dependent information, and third party information. The automated location and context information allows for users to set triggering conditions for other users, such as to provide an alert to one user or more users upon a particular action of the monitored other user being automatically determined by the system.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/247,466, filed 27 Aug. 2016, which is a continuation of U.S. patentapplication Ser. No. 14/751,399, filed 26 Jun. 2015, which is acontinuation-in-part of each of: U.S. patent application Ser. No.14/270,534, filed 6 May 2014, U.S. patent application Ser. No.14/455,279, filed 8 Aug. 2014, and U.S. patent application Ser. No.14/455,297, filed 8 Aug. 2014; each of which is a continuation-in-partof each of U.S. patent application Ser. No. 14/051,071, filed on 10 Oct.2013, and U.S. patent application Ser. No. 14/051,089, filed on 10 Oct.2013. The co-pending parent applications are hereby incorporated byreference herein in their entirety and are made a part hereof, includingbut not limited to those portions which specifically appear hereinafter.

FIELD OF THE INVENTION

This invention relates generally to the field of social media, and moreparticularly, to a method, system, and apparatus that detects, tracks,and automatically informs users of the location and activity of others.

BACKGROUND OF THE INVENTION

Social media systems have permeated daily life. Information iscollected, organized, and disseminated worldwide via informationalcollection and dissemination, micro-blogging and blogging services.Other social media are mobile and positional in nature and can bereferred to as Mobile Positional Social Media (MPSM). As these systemsfocus on locations, mobile device implementations permeate the space.That said, however, while MPSM implementations are targeted to primarilyexecute on mobile devices, such as but not limited to smart-phones(e.g., Apple's iPhone, Google's Android), tablets (e.g., Apple's iPad,HP TouchPad), and laptop computers, they often support implementationsfor non-mobile environments such as but not limited to desktops andworkstations, and large scale compute farms and cloud computing servers.

MPSM systems focus on locating users and notifying each other withintheir community of their respective locations or nearby content ofinterest. For example, Foursquare's application locates users andinforms them of items of interest in their vicinity or the vicinity oftheir choice. Users are motivated to actively and manually “check-in” attheir location with specificity rewarded. Rewards include “badges” andhonors such as being named “Mayor.” Additional enticements are grouptexting facilities as provided by the likes of BrightKite. Other MPSMinclude but are not limited to Gowalla, Loopt, Jaiku, Plazes, and FireEagle.

One limitation of MPSM systems is their reliance on global positioningsystems (GPS). The use of GPS devices does typically simplify locationtracking implementation; however, this comes at a significant energycost. Since a significant portion of MPSM systems usage is via mobiledevices, reducing energy consumption is critical.

Another limitation of current MPSM systems is their reliance on activeusers identifying their location and/or their activity at the location.Another limitation of current MPSM systems is the limited modes ofinformational guidance provided to the user. For example, no remindersor instructional commenting is provided. That is, users are not remindedof activities that fit their given location and context in a pushmanner; rather, user inquiry of locally available options is needed.Ideally, given location and context users are proactively pushedinformation that is immediately relevant to them. Additionally,activities that are nearby to their current location or will becomeavailable can likewise be identified.

There is therefore a continuing need for improved MPSM systems andapplications, including automated location/activity methods and systems,and improved user interfaces.

SUMMARY OF THE INVENTION

This invention provides a method, system, and apparatus, such asembodied in a MPSM or other software application that automaticallydetermines and shares a location and/or an activity of a user. Theapplication learns user activity over time, with the learning based uponuser locations and/or context. The present invention generally providesmethods and applications for a MPSM that automatically understands andinforms the “who, what, when, where, and/or how” of a user and theuser's community. For example, who are the user and their communitywith, what are the user and their community doing, where geographicallyare the user and their community, when are, and historically when were,the user and their community doing this, and/or how can users' behaviorsbe modified?

The invention includes a method of sharing locations and/or activitiesof a user participating in a social networking service. The method isexecuted by a software application stored and executed on one or morecomputers or data processor systems, such as a mobile device (e.g.,phone, tablet, or laptop) and/or an application server (such as forconnecting user communities). In one embodiment the method includesreceiving user information about a destination, automaticallyassociating the user information with the destination, and automaticallysharing the user information in the social networking service uponfurther user arrivals at the destination prior to receiving anyadditional user information.

The invention also includes a method and supporting system for settingnotifications/alarms corresponding to triggering conditions. The methodis executed by a computer system and includes steps of: receiving atriggering condition from a first user through a first user electronicdevice; automatically monitoring for the triggering condition within thesocial networking service; automatically determining an occurrence ofthe triggering condition by a second user through a second userelectronic device that is within the social networking service; andautomatically communicating the occurrence of the triggering conditionto the first user through the first user electronic device and/or toanother one or more community members via her/his/their electronicdevice(s). The monitoring for the triggering condition desirablyincludes automatically determining a location of the second user;automatically determining context information about the positionallocation without input by the second user; automatically deducing asuser information a location type and/or user activity of the locationfrom the context information; and automatically analyzing the userinformation for the occurrence of the triggering condition.

The invention also includes a method and supporting system fordetermining locations and/or activities of users participating in asocial networking service. The method is executed by a computer systemand includes steps of: automatically and either periodically orcontinually tracking locations of member electronic devices of aplurality of members of a social media community of a first user;automatically displaying location information for each of the pluralityof members on a first user electronic device; receiving a triggeringcondition for one of the plurality of members from the first userthrough the first user electronic device; automatically determining anoccurrence of the triggering condition by automatically monitoring amember electronic device of the one of the plurality of members; andautomatically communicating the occurrence of the triggering conditionto the first user through the first user electronic device. Thedetermining of the triggering condition, such as a location and/or useractivity, desirably includes automatically determining contextinformation about the location information for the one of the pluralityof members without manual input therefrom; automatically deducing asuser information a location type and/or user activity of the locationfrom the context information; and automatically analyzing the userinformation for the occurrence of the triggering condition.

The triggering condition can be any desired event, such as a second userelectronic device's proximity to, arrival at, or departure from, alocation, or an activity or condition of the second user automaticallydetermined using the second user electronic device. As an example, givenan alert triggering condition being satisfied, a user can be notified assoon as a community member is near them, namely answering: who is nextto the user? Additionally, an alert triggering condition set by the usercan be satisfied and triggered by the condition which notifies the userthat a community member is at a given location, namely answering: whereis a given community member? Additionally yet, an alert triggeringcondition set by the user can be satisfied and triggered by thecondition which notifies the user that a community member isparticipating in a given action, namely answering: what is a givencommunity member doing? Additionally further yet, an alert triggeringcondition set by the user can be satisfied and triggered by thecondition which notifies the user that a community member has actuallydeparted from a given location, namely answering: when has a givencommunity member departed from, say their home? The notification-settingfirst user can be provided with a time and/or distance between the firstuser and the members triggering the notification.

One embodiment of the invention provides a method, executed by acomputer system, of delivering messages. The method includes receivingan electronic message, e.g., including text and/or an image, created bya user through an electronic device, storing the electronic message,automatically determining when a triggering condition occurs, such asthe electronic device being at an actuating position, and automaticallyposting the electronic message upon determining the electronic device isat the actuating position. The actuating position can be any suitablelocation-based position, such as, without limitation, proximity to alocation or to a second electronic device. The electronic message can belinked to the actuating position, and delivered by, for example, shortmessage service, e-mail, and/or a common wireless connection to the userand/or to a member of the user's community.

The electronic message can be delivered to the user herself/himself onher/his mobile device (e.g., the message creating device or anothermobile device of the user) or to one or more other user device(s). Inone embodiment of this invention, the method of delivering messagesincludes receiving an electronic message from a user through a firstelectronic device of the user, automatically linking the electronicmessage to a message recipient, automatically determining that the useris within a predetermined proximity to the recipient, and automaticallyposting the electronic message to a second electronic device of therecipient upon determining that the first electronic device is withinthe predetermined proximity. The message can be delivered by shortmessage service, e-mail, or a common wireless connection such asBluetooth.

The invention still further includes a computer server for providing atracking and/or social networking service, such as operating the methodsdiscussed herein. The computer server of one embodiment of thisinvention includes a tagging module configured to correlate userinformation to a user destination, a database module configured to storeuser information including user locations and user activities at theuser locations, and a communication module configured to automaticallyshare a user activity in the social networking service upon further userarrivals at a corresponding one of the user locations. The computersystem can also include an association module configured to associatethe user activity with the corresponding one of the user locations.

In embodiments of this invention, the system or application identifieslocations, and over time, automatically “checks-in” not only thelocations but what the locations imply in terms of potential activitiesof the user. That is, given a location and a user, the system desirablysuggests what activity or activities the user typically partakes at thatlocation. For example, if a user frequents a location in “Potomac,” thislocation might be identified as “parents' home.” Furthermore, at thishome, a variety of activities might be common such as: “visitingparents,” “drinking tea,” “eating lunch,” or “sampling wine.” Inembodiments of this invention, each time the user appears at thatlocation, based on context, defined by elements of or surrounding theactivity such as but not limited to time of day, day of week,immediately preceding activities, weather, surrounding people, etc., aset of likely occurring activities are identified. The user can beprompted with a list from which to select a subset of these activitiesor to identify a new activity. The invention can also include ranking auser's potential suggested activity based on context and presenting thatranked list to the user, or the user's community. The inventiongenerally provides a learning component that can allow the manual inputsto become automatic prompts, which can become automatically issuednotifications for the location based upon the context. The prompts canbe issued through any known format, such as an application alert on thedevice or a text message to the user. The invention also supports theuser changing activities for a given location at any time, and/or userimplemented delay of the notification of a user's location or activity.

The invention can include the incorporation or creation of usercommunities and sub-communities, with such communities andsub-communities sharing information. Embodiments of the inventioninclude automatically identifying a user's location and activity, anddesirably notifying that user's community of that user's location.Particular embodiments of this invention provide one or more additionalcommunity functionalities including, without limitation, automaticallyidentifying a user's activity and notifying that user's community ofthat user's activity, commenting on user activity and location report byuser or community—with multiple and multimedia comments supported,supporting the “liking” of user activity by the community, supportingthe user tagging of location, activity, or the pairing of location andidentity—tagging can be textual or via any multimedia means, correlatingthe individual user's activity with the ongoing activity of otherswithin the community, and/or correlating the individual user's activitywith the past activities of others within the community.

One embodiment of this invention provides a method of and system forautomated determining of locations and/or activities of a userparticipating in a social networking service. The method is executed bya MPSM computer system and automatically determines a positionaldestination of a user, automatically deduces as user information alocation type and/or user activity of the positional destination, andautomatically shares the user information as instructed in the socialnetworking service. Deducing the user information is based upon contextinformation about the positional destination, desirably with minimal orno input by the user. The context can include, without limitation,time-dependent information, past and/or current associated userinformation, past user and/or community information about the location,and/or third party information. The context can be used to at leastreduce location types and/or user activities, for example, as a functionof the past location type and/or user activity of the positionaldestination for a given time period.

Another limitation of current MPSM systems is their lack of individualand community activity summarization capability. That is, summary of thelocal user and community member activities and time durations are notavailable, neither to the local user nor to their community. Thissummarization can range from simple statistical aggregation to advancedcorrelations as derived by known techniques in the art. In embodimentsof this invention, users are provided with summaries of their locations,durations at these locations, and activities at these locations.Furthermore, at the discretion of the local user, these summaries aremade available to their community members. Particular embodiments ofthis invention provide one or more additional summarizationfunctionalities including, without limitation, maintaining a history ofuser locations, activities, or combination thereof, correlating theindividual user's activity with the past activities of the user,correlating the individual user's activity with the expected learnedfuture activities of self, data mining behavioral patterns andsuggesting alternatives to avoid obstacles, providing statisticalaggregation of locations visited, providing derived summarization oflocations visited, providing statistical aggregation of activities,providing derived summarization of activities, providing statisticalaggregation and/or derived summarization of individuals (such ascommunity members) encountered during a time period.

The invention further includes the use of one or more pictograms toindicate current, past, and likely and already scheduled futureactivities of community members. Pictograms can be manually orautomatically associated with activities at a given location; thelocation of interest either being, will be, or was previously visited bya community member or is of relevance to a user request. The system canreceive one or more user-defined pictograms for a destination,automatically associate the pictogram with the destination, andautomatically share the pictogram in the social networking service uponfurther user arrivals at the destination prior to receiving anyadditional user information. Pictograms can be changed and have furtherphotos or data associated or linked thereto for community review and/orcomment. After receiving pictograms for at least one visit to a locationor information that is transcribed to pictograms regarding the location,information being obtained through other means, such as but not limitedto external databases, social media forums, or purchased information,the system desirably automatically associates and shares, such as usingthe methods described herein, the appropriate pictogram with theappropriate user community.

Other objects and advantages will be apparent to those skilled in theart from the following detailed description taken in conjunction withthe appended claims and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a representative area of a user of one embodiment of thisinvention.

FIG. 2 illustrates geofences surrounding a current reading and itsimmediate neighbors according to one embodiment of this invention.

FIG. 3 illustrates the determination of a location via intersectingcircles according to one embodiment of this invention.

FIG. 4 illustrates the processing flow employed to identify an arrivalaccording to one embodiment of this invention.

FIG. 5 illustrates a system view location summary of an individual useraccording to one embodiment of this invention.

FIG. 6 illustrates a system view transit summary of an individual useraccording to one embodiment of this invention.

FIG. 7 illustrates a system view activity summary of an individual useraccording to one embodiment of this invention.

FIG. 8 illustrates a system view time location breakdown in comparisonto other users according to one embodiment of this invention.

FIG. 9 illustrates a system view a listing of activities shared withother users according to one embodiment of this invention.

FIG. 10 illustrates a view presented to users that quantifies theirshared patterns according to one embodiment of this invention.

FIG. 11 illustrates a view presented to users summarizing their weeklybehavior according to one embodiment of this invention.

FIG. 12 illustrates a view presented to a user of his and hiscommunity's activities in a pictogram format, according to oneembodiment of this invention.

FIGS. 13-15 illustrate various pictogram summaries for user activities.

FIGS. 16-18 illustrate adding photos to pictograms and changingpictograms.

FIGS. 19 and 20 show rapid review of photos according to one embodimentof this invention.

FIGS. 21-25 illustrate rapid review of photos according to oneembodiment of this invention.

FIGS. 26-28 show mobile device screens illustrating tracking and settingtriggering conditions, according to one embodiment of this invention.

FIGS. 29-31 show mobile device screens illustrating detailed communitymember personally matched information according to one embodiment ofthis invention.

FIGS. 32 and 33 show mobile device screens illustrating user informationand options according to one embodiment of this invention.

DETAILED DESCRIPTION OF THE INVENTION

This invention includes a method, system, and/or apparatus, such asembodied in a MPSM or other software application that automaticallydetermines and shares a location and/or an activity of a user. Theautomatic and continual determination of locations and/or activities ofusers participating in a social networking service allows for trackingand monitoring for particular events, and for automated notifications ofoccurrences of those events. For example, a user can set a triggeringcondition for one of the user's community through the user electronicdevice. The methods and systems of this invention automatically trackand monitor the community members, and automatically monitor for anoccurrence of the triggering condition. Upon detecting the occurrence,an automated communication is sent to the user through the user'selectronic device.

In embodiments of this invention, the application learns user activityover time, with the learning based upon user locations and/or context.The application can learn through automatically determining activitiesat locations based upon known context information and past contextinformation for the location. The invention further includes energysaving location methods for the mobile device that can be used to moreefficiently allow the location and social media aspects of the inventionto be implemented on a mobile device. The method and application can beused for any suitable function, such as a safety and/or reminder serves,and is particularly useful for use in social media applications. Theinvention will be described below with implementation in a MPSM system,and particularly with an MPSM application that learns user activity overtime, with the learning based upon user locations and/or context.

The method and system of this invention is mobile and positional innature. Such systems, like many other systems originally developed onone type of computing platform but migrated to another, operate not onlyon mobile environments. That is, while MPSM implementations are targetedto primarily execute on mobile devices, such as but not limited tosmart-phones, tablets, and/or laptops, they often support implementationfor non-mobile environments such as but not limited to desktops andworkstations, servers, and large scale compute farms and cloud computingservers. The invention will be described below with a mobile device,such as smart phone having cell service, a GPS system, and access to theInternet via WiFi.

The method and system of this invention is desirably executed orimplemented on and/or through a mobile device computing platform. Suchcomputing platforms generally include a processor, a recordable medium,an input/output (I/O) device, and a network interface capable ofconnecting either directly or indirectly to the Internet. The mobiledevice executes over a networked environment, a non-limiting exampleshown in FIG. 1. The mobile device is connected, either directly orindirectly, using any of the many techniques and technologies known inthe art, over a network, to back-end system or systems,itself/themselves computing devices. The mobile device can connect witha remote server, shown in FIG. 1 as server 38, to store and/or accessuser or community information.

MPSM systems are used to support users remaining socially aware of theircommunity. That is, their primary usage typically is to actively monitorthe location and activity of family members, friends, colleagues, andgenerally others within one's community. Communities can be partitionedinto sub-communities where the union of the sub-communities forms theuser's community. The sub-communities may or may not overlap. Thepartitioning of communities into sub-communities is beneficial insupporting specialized applications. For example, while a user mighthave general interest in the location and activity of all of theircommunity members, they might be particularly interested in the locationand activity of those who might be suddenly in need of assistance.

Regardless of the community size, besides tracking users to potentiallyprovide immediate assistance, medical environments that supportstate-of-being can capitalize on MPSM systems. State-of-beingapplications can detect abnormal patterns in a user's behavior orphysical presence. By learning typical behavior of an individualregularly using a MPSM system according to embodiments of thisinvention, abnormality in behavior can be detected, and an alarm issued.It is within the scope of this invention to additionally incorporatedata and information from health monitoring applications known in theart that are likewise resident on the mobile device to supportstate-of-being applications. Similarly, in community activities thatrequire continuous monitoring and coordination, such as but not limitedto an emergency response team or a neighborhood watch or othersurveillance efforts, MPSM systems according to this invention canprovide the necessary infrastructure to support the neededsynchronization.

The creation of a community can include the issuing of invitations. Aninvitation is a request by a user A of another user B to allow theinviting user, user A, to track the activities of the invited user, userB, and vice versa. If the invited user accepts, the inviting and invitedusers form a community.

A community is relevant to only that user which formed it. That is,different users have different communities. A community is a grouping ofinvited (referred to as remote) users by the inviting (referred to aslocal) user. A local user can partition or merge a community, thusforming a sub-community or a parent community, respectively. Forexample, consider 5 users: Bob, Sam, Sally, Alice, and Susan. Bob caninvite Sam, Sally, and Alice, thus forming his user community. Bob canlikewise partition his community into a sub-community consisting of onlySam and Sally. Sally can invite Susan. Thus, Sally's community wouldinclude Bob (via his invitation) as well as Susan. If no additionalinvites occurred, Sam's and Alice's respective communities would onlyinclude Bob (each via Bob's invitation), while Susan's community wouldonly include Sally (via Sally's invitation).

Providing users with the opportunity to expand their communities in aconvenient manner is advantageous. Such expansion can seamlessly beaccommodated by including users listed in a user's contact lists eitheras a whole or selectively into their community. Contact lists include,but are not limited to, users listed in a user's local address book,e-mail contact list, Twitter follow list, LinkedIn connections list,and/or Facebook friends list. By incorporating users listed in a user'scontact list, the user's community is expanded without effort. Note,however, that selected inclusion can be supported; thus enablingcommunity growth without unnecessarily over-expanding the community.That is, entries from the contact list can be included in their entiretyand the user can selectively remove those entries which s/he wishes tobe excluded from the community. Similarly, entries from the contact listcan be selectively added.

Users are identified by their account identifier. To use MPSM a useraccount is created. User accounts generally require a user login, whichis a unique user identifier, and a password or equivalent. After havingcreated an account, a user can log in. Initially, the local user doesnot have a community. In embodiments of this invention, over time, themethod and application tracks the activities and location of the localuser. Should the local user establish a community as aforementioneddescribed, the community members will likewise be tracked. Local usersreceive notifications of the location and activities of their communitymembers. Once logged in, the local user can select to activate ordeactivate self and community tracking and notification. If notoverwritten, default settings are used.

Whenever logged in and tracking is enabled, a user's location andactivity is tracked. That is, a user periodically records their locationand/or activity. Locations are tagged by name. Names can be but are notlimited to the following schemes: physical (e.g., 123 Oak St.), absolute(e.g., Acme Coffee), and/or relative (e.g., my work office), orproximity (e.g., two miles from home). Activities are typically events.These events might be common to the entire community such as: “drinkingcoffee,” “eating lunch,” “sampling wine,” “working from home,”“commuting,” etc., to more specific to a local user such as “restoringcar” or “driving to lake home.” Multiple activities can occursimultaneously. Users can change their activities at any time.

Unless preloaded or derived from an external source, such as but notlimited to a location database, initially, all locations and activitiesare unknown. Local users must record all such location-activitycombinations, i.e., a local user must name or tag the location and theassociated activity. A list of activities common to the local user'scommunity can be provided. This community activity list can be rankedeither arbitrarily (randomly), according to most recently used, mostfrequently used, relevance to location, alphabetically, etc. Eventually,an activity list specific to the local user is learned. This local useractivity list can be displayed to the local user either individually,along with the community list, or merged with the community list. Again,any of these lists can be ranked as previously mentioned.

FIG. 1 illustrates a representative area 30 to demonstrate a method ofand application for locations and/or activities of a user participatingin a social networking service. The area 30 is shown as a cellularcommunication network including a plurality of cells 32 each disposedaround a cellular communication antennae or base station 36. Within thearea are a plurality of destinations each shown as including a WiFiInternet connection. The local user has one or more electronic devices,such as a mobile device that communicates with a remote server 38 viathe cellular network and/or the WiFi connections. As will be appreciatedthe methods and applications of this invention can operate within anysuitable size and configuration of the communication area, depending onwhat the user encounters.

Destination 40 is the home of the user. The user commutes to office 42for work on most business days. On the way the user typically stops atthe coffee shop 41. For lunch on most days, the user visits restaurant43, but on Wednesdays the user typically meets a second user for lunchat restaurant 44.

At each destination 40-44, the user enters user information about thedestination. The application and computer system that receives the userinformation automatically associates the user information with thedestination, and stores the user information in a locations database,such as on the device and/or at server 38. The destination desirably isdetermined automatically and tagged with the user information, such as alocation name of the destination and/or the user activity beingperformed at the destination. For example, destination 40 can be taggedas “home” and likely has numerous activities associated with it. Thedestination 41 can be tagged as its establishment name “Acme Coffee” orsimply “coffee shop” and associated with the user activity of “buyingcoffee” or “latte time.” The manually entered user information can thenbe automatically shared to the user's community in a social networkingservice. Similar user information is received for the other destinations42-44. The user information desirably includes any other informationabout the location or activity, whether manually entered orautomatically determined, such as the time of the visit or activity.Some destinations, such as home or work will likely have multiple useractivities over a period of time, such as “coffee break,” “meetingtime,” and/or “quitting time.”

The computer system receives user information and associates the userinformation with the corresponding destination for multiple visits toeach of the destinations 40-44. The computer system begins learning thelocations and user activities. In embodiments of this invention, theuser can be automatically prompted for confirmation of the userinformation upon arriving at a destination to confirm the locationand/or user activity. For example, the user can be provided with anautomatically generated list of previously entered user activities forthe destination upon arrival, thereby promoting efficient collection ofinformation. The items on the list can be listed in an order based upona particular ranking, such as number of times entered previously orbased upon a context, such as what activity is likely being performed ata particular time of a particular day.

Over time, the computer system learns the user information and beginsautomatically associating and identifying at least some user activitiesfor corresponding locations. As will be appreciated, the automaticidentifying of activities at locations will likely occur at differentrates for different activities and locations, with some locations havingfewer activities and/or more frequent visits than others. In preferredembodiments of this invention, the system automatically shares the userinformation in a social networking service upon automatically detectingfurther user arrivals at the destination. The automatic sharing of userlocations and/or activities desirably occurs upon the user's arrival atthe location, or at a particular time at the location. As such theinvention includes an automatic detection of the user's arrival at adestination. The automatic sharing desirably operates without useraction and prior to receiving any additional user information for thedestination.

As an example, the user may typically purchase lunch at destination 43,but on Wednesdays typically goes to lunch with a friend or spouse atdestination 44. The lunch routines of the user, and particularly theWednesday lunch routine, can be learned by the system and automaticallyshared to the user's community upon the system automatically determiningarrival, without manually input from the user. If the user is havinglunch with a community member, then the system can automaticallydetermine that both users are at the same location together toautomatically recognize and confirm the lunch activity, and proceed toautomatically share the information for both user's to their respectivecommunities. If the user deviates from a routine, the system can knowthis, and refrain from sharing the typical destination, by the mobiledevice detecting a different location than the typical routinedestination.

In embodiments of this invention, learning is accomplished by any knownmachine learning, data mining, and/or statistical techniques known inthe art. Supervised, semi-supervised, and/or unsupervised approaches canbe used, including, but not limited to Naïve Bayes, Neural Networks,Support Vector Machine, and/or Associating Mining based techniques.

The invention desirably records all posted locations and activities.Throughout use, the disclosed invention learns the correspondinglocations and the set of associated activities. More so, via commentsmade by the local user and by the local user's communities, theimportance of the activities can be learned, such as for the promptingdiscussed above. Importance can be either local user or communitybiased. Additionally, importance can be biased by context. For example,community members as a whole might prefer “eating steak,” “eatingpizza,” and “eating sushi,” in that respective order. On the other hand,a local user might only eat sushi. Thus, local user bias will yield“eating sushi” only, while community bias will suggest “eating steak,”“eating pizza,” and “eating sushi,” in that respective order.

In embodiments of this invention, locations are named according to anaming convention. Regardless of the naming convention used, a locationis a physical geographical position. More so, physical geographiclocations associate properties that can vary with or be dependent oncontext, namely time and date (hours, day of week, calendar date, etc.),users involved, and their relationships to each other, etc. This contextcan affect the associated location name or activity.

A common scheme that can be used to at least assist in identifying aphysical geographical location is via the use of geocoding. Geocoding isthe representation of a physical location via the pairing of latitudinaland longitudinal coordinates commonly referred to as a lat-long pair.Global Positioning Systems (GPS) can also determine a physical positioncoordinated via the triangulation of satellite transmissions. TypicallyGPS devices derive lat-long pairs which are made available to a varietyof applications, often via map displays. GPS economics, accuracy, andsimplicity of use resulted in their wide appeal and commercial success.Their continuous use in mobile devices is problematic, however, as theyare energy intensive and rapidly drain the battery. Thus, alternativemeans or approaches to detect locations are desired.

Embodiments of this invention, as discussed above in FIG. 1, use or relyupon cell coordinates. When mobile devices communicate with a celltower, they send their cell coordinates. These coordinates are recordedby the cell provider and are typically not publicly known. The cellphone or, in this case, the mobile device supporting the positionalsocial media system, however, is aware of their coordinates. Thus, thedevice can store the cell coordinate position and automaticallyassociate that cell coordinate with the location name provided by thelocal user. Over time, a location database of cell coordinate and namedlocation pairs is created. The local portion of the database favors thelocal user. The union of all the local portions of the location databasedesirably constitutes the name space of the entire MPSM system of thisinvention. It is understood that any of the many database managementsystems or storage schemes known in the art can serve as the platformfor this location database. Thus, location names can be provided withoutthe need to rely on a global positioning system, reducing batteryconsumption. Location data can additionally or alternatively bepurchased or otherwise provided by a third party.

An additional and/or alternative approach for automatic locationdetermination relies on WiFi triangulations. Mobile devices can grow andmaintain a database of known open WiFi networks, for clarity we callthis database an Open-WiFi-Net database. Such mobile devices can use theinformation stored or derived from the information stored in theOpen-WiFi-Net database to further refine the accuracy of a locationwithout the use of GPS. Via point triangulation, when an Open-WiFi-Netdatabase is available, the mobile operating system uses not only thecell tower but also WiFi triangulations to determine location. It iswithin the scope of this invention to use either or both cell-phone andWiFi triangulations to enhance location information in addition to anyother disclosed approach. The mobile device can use the WiFi signal at adestination, such as destination 43, and additionally or alternativelyany detectable open WiFi signal from a neighboring location, such asestablishment 45 that is adjacent destination 43.

Having created the location database, searching, namely querying, thedatabase uses the cell coordinate or the location name. That is, alocation name query takes a location name as input and returns thecorresponding cell coordinate. A cell coordinate query takes a locationname as input and returns the corresponding location name. Note that,multiple names can be attributed to a given cell coordinate. That is, alocal user might name a location using multiple different names;different users can name same locations using different names.Similarly, the same name can be used for different cell coordinatelocations. All names corresponding to a given cell coordinate arereturned. It is within the scope of this invention to selectively returnnames based on context, user, or community bias. Similarly, all cellcoordinates corresponding to a given name are returned. Again, it iswithin the scope of this invention to selectively return coordinatesbased on context, user, or community bias. Ranking of the resultsreturned can, when desired, be biased towards the local user.

A key concern for MPSM systems is collecting location information.Clearly any location information available within the mobile deviceshould be harnessed. Thus, if GPS readings or any other locationinformation is generated by other device resident applications, thesereadings are desirably recorded and utilized by the method andapplication of this invention. However, reliance on strictly otherapplications to obtain positional information is obviously not realisticor possible.

In embodiments of this invention, positional information is obtained viathe use of geofences. A geofence is geographical boundary or “fence”surrounding a positional reading. As these boundaries are radius based,geofences are generally circular. Location transmission occurs whenevera handover of one cell tower to another occurs and is expected but notguaranteed to occur once a geofence boundary is crossed. To tracklocation, periodic location transmissions are required. Since locationtransmissions must be minimized to conserve device energy, transmissionsshould only occur given geographical movement. Thus, crossing a geofenceshould generate such a transmission. Unfortunately, as crossing ageofence does not guarantee a location transmission, increasing thelikelihood of a transmission is necessary.

In contrast to the known uses that surround a location with a singlegeofence, to increase the likelihood of a location transmission duringmovement, embodiments of this invention include surrounding a locationgeofence with a plurality of geofences. In one embodiment of thisinvention, a method of tracking a user includes determining a locationof the mobile user, automatically establishing a first geofence aroundthe location, and automatically establishing a plurality of additionalgeofences around the first geofence, with each geofence including aboundary. A location transmission is obtained by the mobile device uponcrossing a boundary of the first geofence or any of the plurality ofadditional geofences. Multiple neighboring geofences are advantageoussince they increase the likelihood of a location transmission as theirboundaries are likewise likely to be crossed given movement.

FIG. 2 representatively illustrates a geofence 60 surrounding a currentlocation 62. The geofence 60 is surrounded by additional geofences 64,all within a given cellular tower transmissions cell 65. Note that partof a neighboring geofence 64′ is not fully within the cell 65, andhence, limits its benefits since a cell tower handoff by movement intocell 65′ will generate a location transmission.

Geofences are implemented as software processes. Operating systems formobile devices, such as but not limited to iOS and Android, limit thenumber of processes available to an application, and thus, the number ofgeofences is bounded. However, this limit typically exceeds the numberof geofences generated using the approach described above. Therefore,additional processes are available, and hence, additional geofences arepossible.

To increase the likelihood of a location transmission given movement, inembodiments of the invention, the remaining available processesimplement static geofences. A static geofence is not dynamicallygenerated given a new location as previously described. Rather, a staticgeofence is one that is fixed and represents those locations that arelikely to be crossed by a given user. That is, users are habitual andfrequent a limited set of locations often, for example but not limitedto, their home, office, or favorite wine or sushi bar. By learning thefrequent locations of users both individually and system wide andsetting static geofences at these locations, biasing by the individualuser, the probability of a location transmission is increased sinceadditional geofences are likely crossed.

More so, these repeated locations vary by city, county, state, country,etc., as well as by other factors such as but not limited to day andtime. Geographical and temporal presence can thus be used to vary theset of static geofences for a given user. For example, the set of staticgeofences for a given user will vary if the user is in Washington, D.C.rather than in San Francisco, Calif. Similarly, the set of staticgeofences for a given user will vary depending on the day and time. Forexample, a user frequents work on weekday mornings but frequents theirfavorite bagel shop on Sunday mornings and their favorite sushi bar onThursday evenings.

Location transmissions suffer from a margin of error. Thus, it isdifficult to precisely pinpoint and tag a location with a singletransmission. Embodiments of this invention include automatic refiningof a location of a user destination as a function of user routines, suchas established by several user visits to the destination. As timeprogresses however, and a user frequents the same location multipletimes, multiple location transmissions for the same location arerecorded. In one embodiment of this invention, as representatively shownin FIG. 3, by overlapping the transmitted location along with its marginof error, a more accurate location can be derived. The overlapping oflocation transmissions for a given location 70 between streets 72 andwithin geofence 74, along with their margin of errors, represented ascircles 76, yields an accurate location placement.

As shown in FIG. 3, location accuracy improves as related data arecollected. Related data, however, can, at times, be somewhat erroneous(in terms of accuracy). A non-limiting example is an entrance to ashopping mall. Such an entrance is not necessarily at the center of thecomplex. Regardless of the entrance displacement from the center of thecomplex, the entrance location can still be used to increase locationaccuracy of the mall complex since the readings for the entrance areconsistent. That is, for a given user, given mobile device, givencarrier, etc., such location recordings remain consistent, all be it,slightly erroneous. Thus, even dirty, namely potentially inaccurate,data can result in correct location identification.

Additionally, having established a location, corresponding lat-long paircoordinates can be reversed engineered, namely mapped back onto, a placename. These derived lat-long pair coordinates become yet an additionalinformation component that is used by a learning system to better refinea mapping to a named place. Machine learning, data mining, andstatistical approaches that are supervised, semi-supervised, orunsupervised can be used, as known in the art, to cross-correlate allavailable location related data.

Once determined, the user information including the location and/or theuser activities are automatically stored in a database. Embodiments ofthis invention include a computer server for providing and implementingthe tracking and/or social networking service of this invention. Thecomputer server includes a location module to determine the userlocation and/or a tagging module configured to correlate manuallyentered user information to a user destination and a database moduleconfigured to store user information including user locations and useractivities at the user locations. For social media sharing, the serverfurther desirably includes a communication module configured toautomatically share a user activity in the social networking serviceupon further user arrivals at a corresponding one of the user orcommunity locations. The server can also include an association moduleconfigured to associate the user activity with the corresponding userlocation.

Since location transmissions are needed during movement, the obviousquestion arises: when should the transmissions cease? That is, thesystem must determine when the user has arrived at a location to knowwhen to perform the automatic steps discussed above. As discussed above,GPS systems are an energy drain on a mobile device, particularly as theGPS remains on and linked with the satellites to maintain locationdetection. Keeping a GPS application operating is a drain on both theprocessor and the battery of the mobile device. This invention providesa method and executable application that conserves energy by notcontinually running during use of the mobile device.

Embodiments of this invention provide an automated method of tracking amobile user that includes providing a location module configured toreceive location transmissions, placing the location module into a sleepmode, awakening the location module upon receipt of a locationtransmission, and determining a location with the location module. Theseplacing, awakening, and determining steps are repeated, thereby placingthe application into a sleep mode when not needed, thereby reducing thedrain on the mobile device. The application goes into sleep mode whennecessary or when desired, such as when the application is not needed,e.g., during extended movement or upon an arrival at a location. Inembodiments of this invention, the application can go into sleep modewhenever a time since the device awakening exceeds a predetermined timeallocation, or upon a determined rate of travel exceeding apredetermined threshold, thereby indicating extended travel.

FIG. 4 illustrates one exemplary, and non-limiting, method according toan embodiment of this invention to automatically detect arrival at adestination. The method is useful for tracking a user's location for anyof various reasons, including, for example, monitoring communitymembers, such as for triggering events, for safety, to provide automatedreminders, and/or to provide automated suggestions to the user basedupon the destination and/or surrounding area. The method of FIG. 4 isparticularly useful for implementing the method and system discussedabove, and can be used to implement other applications and method toprovide energy savings compared to GPS location methods in mobiledevices.

FIG. 4 includes a flow chart 100 that includes and/or represents threedistinct situations, namely, an actual arrival, rapid movement, andsporadic movement without an actual arrival. Initially, the applicationis in sleep mode. Sleep mode is a state when no processing, and hence noenergy consumption, takes place. Processing occurs once the applicationis awoken. A location transmission, such as a cell tower transmission oranother application obtaining location information, awakens theapplication in step 102. Since the application awakening occurs due to alocation transmission, the current location is known.

Once awakened, the application typically has a maximum amount of time tocomplete its processing. This limit, called time allotment, is set bythe device operating system. All processing must complete prior toexceeding the time allotment. Ideally, the application should relinquishthe processing flag back to the device operating system before theoperating system forcefully removes the application from its activequeue. Voluntarily terminating an application, namely returning it tothe sleep mode, rather than having it forcefully terminated by the hostoperating system, is consider good citizenship. In step 104, theapplication initializes two timers, namely, a timer count representingthe duration of time the process has executed since last awakening, anda stationary count representing the duration of time since the lastdetected device movement.

As time progresses and the process executes, the timer count isincremented in step 106. In one embodiment of this invention, wheneverthe application processing time exceeds the operating system timeallocation (108—YES branch), the application is voluntarily placed insleep mode 105. Note that the time allocation threshold is notnecessary, but set to support good citizenship.

Assuming that the time limit has not been reached (108—NO branch), theapplication waits for t time units in step 110. After waiting t timeunits, new current location data are obtained is step 112 and storedlocally on the device in step 114. In step 116, the current location iscompared to the previously known location. If the two locations differ(116—NO branch), the rate of travel is computed in 118. If the rate oftravel exceeds a threshold (120—YES branch), the process is desirablyand voluntarily placed in sleep mode 122. Rapid travel is unlikely toresult in an immediate or near term arrival; thus, checking locationswhile moving rapidly unnecessarily uses device energy. Eventually, theapplication process is awoken with the device moving at a slower rate.At that time, location checking is needed as an arrival might soonoccur. If or when the rate of travel is slow (120—NO branch), movementis noted in step 124, and the loop is repeated commencing with theindication that additional processing time has elapsed in step 106.

Thus far, the arrival detection process has been voluntarily placed insleep mode either due to having exceeded the self-imposed processingallotment quota which is desirably set just slightly below the operatingsystem's time limit that leads to the removal of the application fromthe active queue (108—YES branch) or having traveled too rapidly(120—YES branch). Slow travel has resulted in simply recording thelocations traveled, noting the movement exists in step 124, and awaitingeither arrival or process termination.

Arrival is determined when the same location is detected for asufficient duration of time. That is, an arrival is potentiallydetermined when the location remains the same (116—YES branch). Thestationary detection count is then incremented in step 126. If thestationary threshold is not yet exceeded (128—NO branch), theapplication waits for t time units in step 110, and the current locationis obtained in step 112 and stored locally in step 114. A sufficient andpredetermined duration at the same location eventually surpass thearrival detection threshold (128—YES Branch).

Once arrival is determined, arrival is declared in step 130, all dataregarding the prior locations visited and stored locally are compressedand sent to the back end system supporting the application in step 132.A new location checkpoint is established in step 134, and the process isplaced in sleep mode 136. From the sleep modes, the process of FIG. 4repeats upon a known location.

Compression of location data is typically performed prior to localdevice to back-end system transmission as often the location data manynot be needed at the back end. Location data may not be needed in cases,for example but not limited, during rapid travel. Although exemplifiedas having data compression occur prior to the sending of the data to theback-end, it is within the scope of this invention to compress locationdata prior to storing them locally.

All parameters described above for FIG. 4, for example t (for the timeunits), timer count, etc., are system and device dependent.Experimentation with and fine tuning of these and other parameters iswithin the scope of this invention. Also within the scope of thisinvention is the tuning of these and other parameters via the use ofmachine learning, data mining, and statistical approaches; supervised,semi-supervised, and unsupervised approaches can be used.

As discussed above, once the user has arrived at a destination, thelocation identification, user activities at the location, and/or anyproximate third party members of the user's community are determined, ifnot already known. In this way, the devices automatically continuallydetermine locations which can be used to identify any establishmentsand/or any community members at or within proximity to the location.

User activities are actions or events. Example user activities includebut are not limited to “drinking wine,” “flying,” “reading,” “attendingconference,” or “commuting.” Users specify a particular user activityeither by selecting from a provided list or by entering a different useractivity. As discussed above, the provided list is generated by storingall previously entered user activities from all systems users butbiasing the ranking of the provided activities based on context, thelocal user, their community, or a combination thereof.

All location and user activity pairs are stored in a databasecorrelating the location with the activity. Any of the many databasemanagement systems or storage schemes known in the art can serve as theplatform for this location-activity database. Furthermore, it is wellunderstood in the art that the location-activity database can store manyadditional features. For example, the user identity and date and time ofthe pair are recorded.

Over time, the database grows and contains a sufficient number of pairsto support mining. The volume of data needed to mine correlations isdependent on the mining algorithm deployed and the level of accuracyneeded. As known in the art, there are many machine learning, datamining, and statistical approaches to support mining. By using any ofthe many available such approaches, either individually or incombination, a local user activity preference per location is learned.Example learning approaches include supervised, semi-supervised, andunsupervised approaches including but not limited to Naïve Bayes, NeuralNetworks, Support Vector Machine, and Associating Mining basedtechniques. The use of proprietary mining techniques is likewise withinthe scope of this invention. Once local user preference is learned, thispreference is used to bias the aforementioned provided user activitylist.

There are many approaches to identify locations. Automated locationidentification is accomplished by periodic checking of the currentlocation. Periodicity of checking depends on, for example, the methodused to determine the location, the desired frequency of reporting,recording, and notification, and the resources available to support thechecking. Other periodicity determination approaches known in the artcan likewise be used. One approach to automate location identificationis the periodic determination of lat-long pairs via the use of a GPSdevice. An online service or a locally resident database can be used tocorrelate the GPS readings with locations. A preferred embodiment ofthis invention uses the aforementioned location database. Whenever atransmission to a connected cell tower is made, the cell coordinates ofthe transmitting device are used as a search query against the locationdatabase. If a match is detected, that location is identified. Anotherpreferred embodiment detects locations upon the crossing of geofenceboundaries as previously discussed. Note that both dynamicallydetermined geofence boundaries and static geofence boundaries detect alocation. Yet another preferred embodiment detects locations bycapitalizing on location transmissions generated by any otherapplication operating on the mobile device requesting locationinformation.

In embodiments of this invention, local users, unless disabled by alocal user, can be provided with automated notifications for themselvesand for their community members. These notifications describe locations,activities, or correlated locations and activities for themselves andtheir community members. For example, unless disabled by the user, anytime a user arrives at a new location, the local user and theircommunities can be notified of the user's new location. Automatedlocation detection and notification, unless disabled, occurs withoutrequiring a local user prompt.

Similarly, activity notification can be automated. Once a user arrivesat a location, a set of activities previously occurring at that locationis shared with the community or provided to the local user forinformation or sharing. If the user chooses to confirm at least one ofthese past activities, both the local user and their respectivecommunity members are notified of this at least one activity.

In another embodiment of this invention, automated notification involvesshared experiences. A shared experience is one that associates multipleusers. These associations can be passive or active. A passiveassociation is strictly informative in nature while an activeassociation requests an action. Non-limiting examples of passive sharedexperiences based on locations include: “User A is at User A's office,as is User B” and “User A is at home as is User C.” Note that the firstexample involves multiple users at the same physical location, namelyUser A's office, while the second example involves multiple users at thesame relative locations, namely their homes, but at different physicallocations.

Similarly, passive shared experience notifications can be based on useractivity. Non-limiting examples of passive shared experiences based onactivity include: “User A is eating lunch as is User B” and “User A isparticipating in her favorite sport as is User B.” Note that the firstexample involves multiple users participating in the same activity,namely eating lunch, while the second example involves multiple usersinvolved in similar nature of activities, namely participating in theirown favorite sport, which can be different actual activities, namelyracquetball and swimming. In both passive shared experiences based onlocation and on activity, known in the art machine learning, datamining, and statistical approaches that are supervised, semi-supervised,or unsupervised approaches can be used to correlate relative locationsand activities to physical locations and activities.

Other shared experiences can prompt for action, and are thus consideredactive. A non-limiting example of an active shared experience promptingfor action includes: “User A posted a picture when at Penn Station; youare now at Penn Station; please post a better picture?” Thus, activeshared experiences request the user to actively react. As above, activeshared experiences can be location or activity based and can be absoluteor relative. Note that it is likewise within the scope of this inventionthat individual user notifications be active and passive, in a similarmanner as described above. However, the correlation of locations andactivities both for passive and active are based strictly on thecurrent, past, or projected expected activities of the individual userrather than those of multiple users.

Typically, only changed locations and activities are notified. That is,a location or activity is not typically repeatedly identified. However,a local user can request repetitive notifications based on anytriggering condition known in the art.

Local users do not always remember to indicate a new location name orconfirm which of the possible suggested name or names the systemindicated for the given the location. As such, it is at timesadvantageous to prompt the local user for information. However, overlyaggressive prompting might annoy the user. In embodiments of thisinvention, the application non-invasively prompts the user upondetecting an unknown location for the given local user. To avoidannoyance, prompting is repeated only rarely, say twice; the number ofrepeated prompts can be set as a parameter. Similarly, to provide asense of comfort, if the back-end system recognizes the location basedon the local user's community members' naming schemes, it prompts thelocal user with guiding messages, for example but not limited to “Manyof your community members call this location The Tasting Room”.

Identification of activities associated with a given location or a givencommunity member can be additionally or alternatively automaticallyinferred in multiple ways. In embodiments of this invention, thecomputer system can automatically determine a positional destination ofa user, such as by using a mobile device discussed herein, andautomatically deduce as user information a location type and/or useractivity of the positional destination. The user information can bededuced, at least in part, based upon the destination context. Exemplarycontext information includes, without limitation, time-dependentinformation (e.g., what time of day is it?), community information(e.g., who is also there?), and/or third-party information about thepositional destination. This method, tied with automatic sharing of theuser information in a social networking service, can provide a partiallyor fully automated process for determining user location and activity.

In one embodiment of this invention, the automatic deducing of the userinformation is based upon known or learned user routine. As discussedabove, local users typically follow standard routines. Some routines aredaily, weekly, monthly, etc. Other routines are context dependent.Regardless of the nature of the routine, learning via any of the manystatistical, machine learning, data mining, or business analyticaltechniques known in the art, enables predictive behavior and automatedactivity and location suggestion. For example, but not limited to, if alocal user always goes out to lunch at noon on every weekday, then if anunknown location is detected on a Tuesday at noon, then the applicationcan suggest that this unknown location is likely a restaurant and theactivity is likely eating lunch. Similarly, routine identificationenables the prevention of transmissions both positional andinformational. For example, but not limited to, if a local user alwaysgoes to sleep at midnight on Sunday through Thursday and awakens at 7:00am the following day, then energy can be saved if the applicationvoluntarily places itself in sleep mode during the hours that the localuser is known to be sleeping. Additionally, routines can involve asequence of activities and locations. A non-limiting example of asequence of activities includes: On weekdays, Eric arrives at his officeat 8:00 am, drinks coffee at 10:00, develops software from 11:00 amuntil 5:00 pm, commutes home at 5:30, and finally, arrives at home at6:00 pm.

Another location and/or activity deduction approach is by association.The automated deducing can include automatically associating a user witha second user at a positional destination. If the second user's locationand/or second user's activity is known, then the system canautomatically infer the location type and/or user activity of the firstuser from the second user location and/or activity. Consider a previousknown event such as: “Community member Sally swimming at the Somersetpool”, assuming that the Somerset pool location was previouslyidentified. As an example of automatically determining a currentactivity of community user Sam, the system identifies through locationdetermination that Sam is currently at the same location as Sally, andalso that Sally is currently at the Somerset pool. From thisinformation, possible automatically postulated associations andactivities are: “Sam is at the Somerset pool”, “Sally is swimming”, and“Sam is swimming”. Thus, it is possible to infer an activity for acommunity member from association with another community member. It iswithin the scope of this invention to use any logical inference methodsknown in the art to generate plausible associations. It is also withinthe scope of this invention to obtain confirmation of the plausiblepostulated activity by the community member, in this case Sam, by askingeither Sam or Sally or by any other means known in the art.

Desirably the computer system operating the MPSM automatically storespast user information, including past location type and/or user activityof the positional destinations of all users. User information for futurevisits to repeat positional destinations can be automatically deduced asa function of the stored past location type and/or user activity of thepositional destination. In embodiments of this invention, the system canrely on recorded previous activities of a user, a community member, orany system user at a given location to postulate on a user's activity ata given location. Past context information for past visits to thepositional destination by the user and/or community members of the usercan be compared to a current context of the user's visit to thepositional destination to deduce the user information. In oneembodiment, the system can reduce possible location types and/or useractivities as a function of the past location type and/or user activityof the positional destination.

As an example, at a given Location A, users previously studied, talked,ate, and drank. Thus, if a user's positional destination is detected asat Location A, then plausible activities postulated can be studying,talking, eating, and drinking. More so, if the given user's communitymembers only previously talked, ate, and drank, it is with a higherprobability to postulate that the given user is talking, eating, anddrinking rather than studying. Furthermore, if the given user visitedLocation A previously, but only talked and drank, then an even higherprobability is that the user is currently talking and drinking ratherthan eating and studying. It is within the scope of this invention topostulate some or all of the previously detected activities of a givenlocation. More so, it is within the scope of this invention to rankorder the activity suggestions according to the relevance of thepreviously visiting users to the given current user. As previouslydescribed, the system can request confirmation of suggested activitiesthrough the user's mobile device.

The system can additionally or alternatively reduce possible locationtypes and/or user activities as a function of the past location typeand/or user activity of the positional destination as a function of thetime of day. The system can rank possible location types and/or useractivities of the positional destination based upon known past timeperiods corresponding to the time of day of the current user visit. Forexample, again given Location A, if previous visiting users wererecorded to study one or more times during the intervals: 3:00-4:30 PMand 7:30-9:00 PM, and to drink one or more times during the intervals:4:00-7:00 PM and 8:30 PM-2:00 AM, then a current visiting user atLocation A at 3:15 PM is likely studying, at 4:15 PM is likely to beeither studying or drinking, and at 1:00 AM is likely to be drinking.More so, if the given user's community members only studied between3:15-4:30 PM then it is with a higher probability to postulate that thegiven user is studying rather than drinking at 4:15 PM. Furthermore, ifthe given user visited Location A previously but only studied, then aneven higher probability is that the user when at Location A is studying.It is within the scope of this invention to postulate some or all of thepreviously detected activities of a given location. More so, it iswithin the scope of this invention to rank order the activitysuggestions according to the relevance of the previously visiting usersto the given current user. As previously described, the system canrequest confirmation of suggested activities through the user's mobiledevice.

In embodiments of this invention, time context alone can be used topostulate activities. For example, if most days, a user is recorded tobe drinking coffee between 9:00-10:00 AM, then, without contradictoryinformation, a plausible activity postulate is that at 9:35, the user'sactivity is drinking coffee. Again, as previously disclosed, it iswithin the scope of this invention to rank order the postulated activitysuggestions according to the relevance of the previous users to thegiven current user and/or to obtain confirmation of suggestedactivities.

Additionally, it is also within the scope of this invention to rankorder the time postulates based on frequency of occurrence within thetime interval. This rank ordering applies to both location based andlocation independent time based postulates. For example, if in theinterval 4:00-4:30 PM, community members studied 25 times but drank 5times then, at 4:15, it is with a higher probability to postulate thatthe given user is studying rather than drinking.

In embodiments of this invention, the system can search and/or use, ifavailable, external, third party information about the positionaldestination for postulating activities for a given location. Forexample, third party vendors might provide, either free of charge or fora fee, activity information for a given site. Consider a marketingwebsite of a centralized homepage for a grocery store chain. Suchwebsites are likely to contain addresses of many or all of theassociated stores. Since these stores all support shopping, an activityassociated with these locations is shopping. Similar information can bederived or purchased from other sources such as but not limited tocommercial information repositories. Additionally, maps can be parsed.Given a location of a road, an activity of that location is likely to bedriving. Various and alternative third party information gatheringapproaches and their incorporation into activity classification andpostulation can be incorporated into the method and system of thisinvention.

Suggested activity information, particularly but not limited toinformation obtained or derived from third party vendors, might beadditive or might be contradictory. Thus, combining or reconcilingpotential activities is needed. The use of voting schemes, biased basedon credibility of the source or on frequency, such as majority, or otherknown techniques, can be incorporated in the method and system of thisinvention. Note that differing suggested plausible activities mayadditive or may be contradictory. The use of techniques such as, but notlimited to, conflict resolution methods, ontology determination, andclustering, etc., can be incorporated to recognize potential conflictsand to expand classification is within the scope of this invention.

Additionally, the classification of plausible activities based onactivities occurring in the surrounding vicinity is likewise within thescope of this invention. For example, consider an unknown locationadjacent to two known locations, such as, but not limited to, twoneighboring stores or two neighboring beaches. For the neighboringstores, known activities might include shopping and strolling, while forthe neighboring beaches, known activities might include sunbathing andswimming. Given location proximity, it is within the scope of thisinvention to suggest a user's activity at the unknown location to beeither shopping and strolling or sunbathing and swimming, respectively.Confirmation can always be obtained for suggested activities and to biassuggested activities based on user familiarity and frequency ofoccurrence.

In embodiments of this invention, local users can opt to delay theirnotifications. That is, once a location is visited or an activityoccurs, a local user can opt to have the notification of the location oractivity be delayed by some period of time. Delaying a notificationprovides the local user with the ability to notify their community ofthe location visit or activity occurrence, but still provides the localuser time to progress to the next location or activity.

Notifications can be complemented with correlations with other communitymembers. That is, both the local user and their respective community canbe automatically notified with a comparison. A comparison, for examplebut not limited to, can identify other community members havingpreviously conducted a specific activity or having visited a givenlocation previously. Comparisons are made by checking other communitymember locations and activities against those of the local user.Checking is performed via a search of the location-activity database. Ifa match exists within a specified or predetermined period of time, acomparison notification is made automatically. The period of time can bearbitrarily set or can follow some logical time quantum such as hour,day, week, etc.

Locations and activities are known by name. However, in addition to aname, locations and activities can have associated personal labels.Labeling locations and activities can detail familiarity to the locationand activity. User labels for locations can be surrogate names, forexample, “favorite city” for Chicago, can be songs or sound waves, forexample song words “my kind of town, Chicago is” for Chicago, can be apicture, for example “the Water Tower” for Chicago, can be a video, forexample “a panoramic view of the Chicago skyline” for Chicago, or anycombination of these and other multimedia tags supported by the localdevice. Similarly, user labels can exist for activities. For example,“favorite vice” for drinking wine, or it can be a song or sound wave,for example the song words “a bottle of red” for drinking wine, or itcan be a picture, for example, a wine bottle picture for drinking wine,or it can be a video, for example “a panoramic view of a vineyard” fordrinking wine, or any combination of these and other multimedia tagginglabels supported by the local device.

In embodiments of this invention, local users and community members cancomment on their own and each other's locations and activities. Commentscan take any of the many multimedia forms provided by the local device.These include, but are not limited to, text, sound, pictures, videos, orany combination thereof. Multiple comments can be made by the localuser, their community, or combination thereof. In addition to statingtheir opinions (commenting), community members can prompt forclarification. That is, by issuing “what” comments, community membersrequest additional information on the posted locations and activities.Additionally, user can “like” their own and each other's locations andactivities. By “liking” a location or activity, community membersexpress their satisfaction of their respective community members'presence in terms of location and activity. Multiple community membersas well as the local user can “like” a location and activity.

The method and systems of this invention can track vast data on both thelocal user and their respective community members. These data cover,including but not limited to, locations, activities, and alsoindividuals both who are system users and those who are not. These datacan be stored and summarized. A summary of the local user and communitymember locations, activities, time durations involved in each of theselocations and activities, individuals who they encountered, etc., can becomputed and presented to the user. This summarization can range fromsimple statistical aggregation to advanced correlations as derived byany of the many, both individually and combined, machine learning, datamining, business analytics, and statistical techniques known in the art.

Information that can be aggregated or derived can answer, exemplary butnot limiting, questions such as: how much time a local user spent doingthings, such as, working at home, working out, walking the dog,commuting to work?; how much time a particular community member spentdoing things, such as, working at home, working out, walking the dog,commuting to work? (Note that the information derived for the communitymember is based strictly on the information that that particularcommunity member chose to share); who are the five most commonindividuals that a particular user interacts with?; what is thelikelihood that after seeing a particular user, the given local userwould see a particular different individual?; which activities andlocations are most closely associated with each other and when are theymost likely to occur?; which three users among a given community aremost likely to visit a particular location together?

Local users can be provided with summaries of their locations, durationsat these locations, and activities at these locations. Furthermore, atthe discretion of the local user, these summaries are made available totheir community members.

The system can also generate and maintain both aggregation and derivedinformation. This information can be used to optimize suggestions toavoid obstacles, for example, but not limited to preferred routing ofcommuting path, promoted target advertising, for example but not limitedto location of nearby ice cream store for those users who frequentlyrecord “eating ice cream” as an activity, and a host of otherinformational services known in the art.

The following examples illustrate, without limitation, the abovediscussed data capturing, storing, analyzing, mining, and presentingMPSM functionalities of this invention. It is to be understood that allchanges that come within the spirit of the invention are desired to beprotected and thus the invention is not to be construed as limited bythese examples.

FIG. 5 illustrates a location summary of an individual user. As shown,two boxes are presented. The top box is a summary of where and how auser spent their last two weekend days, while the bottom box provides asummary of where and how a user spent their last five weekday days. Asshown, in both cases, the duration of time spent in a given location islisted. For example, looking at the top window, the user spent about 9hours in Georgetown in Washington and about 1 hour in O'Hare in Chicagoduring the last two weekend days. The user was obviously on travel asthe user spent less than a minute at home during the weekend.

FIG. 6 illustrates a user's transit summary, which is a summary of theuser's transit characterized by speed, namely slow, medium, and fasttravel, and when, where, and for how long did this travel occur, namely,duration and initial and terminating locations. The average speed islikewise noted. For example, the user traveled fast from Denver airportto home, a distance of 964.57 miles at an average speed of 291.29 MPH,and it took roughly 3 hours.

FIG. 7 illustrates a user's own activity summary. That is, a summary ofthe user's weekly activity is provided that includes the frequency ofand percentage and absolute time involved in the activity over the pastweek. For example, the user was at the Four Seasons twice within theweek for 3.4% of their reported time or about 4 hours.

FIG. 8 illustrates a user's time summary in comparison to their friends.The summary of the user's time breakdown is made in comparison to otherswithin their community. For example, the percentage of time the userspent at home as compared to that of their friends is roughly 14% (0.14x) versus in transit which is 1.53 times as much.

FIG. 9 illustrates a summary of a user's activities shared with others.The summary of the user's activities is shown providing an indication ofthe amount of time and activities jointly experienced. For example, theuser jointly had sushi with and visited Ophir at his home. Alsoindicated in the bottom portion of the frame are the names of one'scommunity members that the user did not see (top listing) or interactedwith (bottom listing) in the past week.

FIGS. 10 and 11 illustrate views presented to the user of a quantifiedtogether board and of a quantified individual board, respectively. FIGS.10 and 11 represent information in a more pleasing form for presentingto the user. FIG. 10 summarizes time spent and activities experiencedtogether. For example, two users spent 73 hours together this weekeating, working, and running. The last time they had drinks together wastwo weeks ago (bottom right boxes). The last time they were together was3 days ago (top left box). FIG. 11 summarizes a user's week in review.The week in review highlights the main activities and locations (tophalf). Likewise summarized are other behavior patterns includinganomalies (bottom half).

Embodiments of this invention incorporate picture characters orpictograms into the mobile positional social media domain. The methodand system of this invention allow users to define, develop,incorporate, modify, classify, and/or transmit pictograms, such asrepresenting user locations and/or activities, to community members andto global users. In one embodiment, a user of a MPSM device can selector create new one or more pictograms specific to themselves, to theircommunity, or globally, that is, to any user that has access to that oneor many particular pictograms. Users can define or redefine existingmeanings of each pictogram; a user can incorporate existing, namelyalready created and defined pictogram, into their messages; a user canassociate a picture to a given pictogram; a user can modify existingpictograms both for local and for her/his community; and/or a user canalso classify a pictogram as to its type, for example, but not limitedto, mood, activity, location, etc.

Any suitable pictogram can be added and/or used in the method and systemof this invention. One exemplary pictogram is known as Emoji. Emoji is acommonly used term that generally means picture characters or pictogram.Some Emoji representations are mapped onto Unicode representation andare thus available for use in a variety of desktop and mobile deviceapplications including the invention disclosed herein.

Using the location and/or activity determination methods discussedherein, the MPSM can determine, and possibly announce, activitiesoccurring, having occurred, or are scheduled or likely to occur usingpictograms. The pictograms can also be used to associate activities witha given location; the location of interest either being, will be, or waspreviously visited by a community member or is of relevance to a userrequest.

In one embodiment of this invention, a method and system of sharinglocations and/or activities of a user participating in a MPSM includesthe system receiving a user-defined pictogram for a destination andautomatically associating the pictogram with the destination. The methoddesirably also includes the automatic sharing of the pictogram in thesocial networking service upon further user arrivals at the destinationprior to receiving any additional user information. The pictogramdesirably corresponds to a user activity at the destination, and can bemanually selected by the user from a list of predetermined pictograms orother photos or drawings, etc.

Embodiments of this invention include a system that learns to associatethe pictogram with the destination upon further visits. The pictogramcan be automatically presented to the user through a mobile device uponreaching the destination for confirmation and/or changing to orselecting a new pictogram. These steps can occur for several visits tothe destination, with the goal for automated learning and ultimately toprovide an automated sharing of the pictogram for the destination. Whereseveral pictograms have been associated with a destination, the severalpictograms can be presented over time for confirmation, preferably in aranked list. In addition, the method and system can automaticallydetermining one or more of the plurality of pictograms to share at afurther arrival at the destinations as a function of an automaticallydetermined context of the further arrival, such as based upon a time ofday or the presence of fellow community members also at the destination,as discussed further herein.

The pictograms according to this invention allow for efficient pictogramsummaries of user and community activities and/or locations for anypredetermined time period, such as a day, week, month, and/or year. FIG.12 is a mobile device GUI that shows users' timelines of activities viapictograms. The pictogram timeline 140 includes pictograms that providevisualizations of a person's and their community's daily activities. Theuser activities are visually compared to what others are doing. The userand the community are represented by photographs and their names. Themost recent activity is represented by a pictogram 150 on the horizontaltimeline 140 that is closest to the user pictogram 142. The remainingpictograms 150′ for each user are showing in order of newest to oldest.The timeline can also display the timing 152 of the most recentpictogram. Feedback by others on the user's activity is also provided.In FIG. 12, one comment is currently available, as shown by the commentnotification 155.

In embodiments of this invention, photographs or other data can beassociated with the pictograms. In FIG. 12, a camera icon 154 can beassociated with, such as by overlapping, any pictogram to show when oneor more photographs or other data items are associated with thepictogram. Community users can touch or click the pictogram to displaythe associated photograph. The camera icon at the bottom of the screencan be used by the user to associate or change photos.

In another embodiment of this invention, users can be grouped by commoncurrent or latest activity. As shown in FIG. 12, the first two communitymembers display the same ‘house’ pictogram, indicating a commonactivity, albeit not necessarily at the same location (i.e., each isthat their own home).

FIGS. 13-15 illustrate alternative pictogram summaries of a user'slocations and/or activities. FIG. 13 illustrates a summary of a user'sdaily activities via pictograms. The visualization summary shows theindividual's activities by pictogram for several days. FIG. 14illustrates a pictogram summary of a user's activities on amonth-by-month basis. FIG. 15 illustrates a histogram summary of auser's monthly activities aggregated by type and presented as avisualization of an individual's monthly activities.

FIGS. 16-18 illustrate an exemplary embodiment associating pictures withthe pictograms. FIG. 16 illustrates the option to take a photograph andassociate it with a selected pictogram. Additionally, it is possible toannotate the image with text using the annotating tool at the bottom ofthe GUI. To assist the user, the system shows or suggests a pictogramrepresentation. The selection of a new pictogram is possible if desiredor if the system suggestion is incorrect. FIG. 17 illustrates the optionto select a new pictogram to associate with the newly taken photo. FIG.17 occurs upon tapping the picture in FIG. 16. Two alternative sectionsexist in FIG. 17: a first section of suggested pictograms, such as basedupon learned location information, and a second section with pictogramswhich are globally available. The system postulates a pictogram toassociate with the picture using any of the many learning classificationalgorithms discussed herein and/or known in the art. FIG. 18 illustratesa system generated suggestion of the location associated with thephotograph. The user has the option to accept or modify the annotation.

This invention further provides a means to rapidly display and reviewuser photographs. In one embodiment, the device, such as through anexecuted application, includes and executes code instructions forproviding rapid feedback in an ergonomically convenient, intuitive userinterface. The code allows for displaying user photographs or other datain response to a plurality of user hand movements within a continuoususer swipe on a mobile device screen. By this user interface method,referred to as the Ownbey-scrub, or “scrub” for short, a user can holddown an icon to select and swipe through a clustered collection ofpictures representing activities that occur within a given time span,location, with specific other users, or any other clustering condition.Clustering of items can be accomplished in any of the many known in theart clustering techniques.

In embodiments of this invention, the scrub operates by placing a finger(and holding it) on an icon presented on a touch screen and scrubbing(without lifting off the screen) with that finger horizontally (left orright) or vertically (up or down). In response to the direction of thecontinuous finger contact/movement, quick feedback is provided to theuser in the form of rapidly displayed pictures. Left or right and up ordown represent forwards or backwards depending on user preference. Userpreference might differ due to any orientation (left or right handed) orany physical or logical conditions. By default, right to left and top tobottom is ascending order while left to right and bottom to top isdescending order. Composition movements consisting of both vertical andhorizontal can also be used. For example, a user might push and holdher/his thumb and scrub right to left, without lifting the hold,scrolling rapidly through her/his daily events from morning to night.Determination of direction of scrolling can be accomplished using anyknown in the art vector composition methods. Scaling the tracking of thescrub movement based on the number of pictures in the intended scrolland determining when such movement was performed can be done via anyknown in the art computations as used for such processing in the imageanalysis, graphics, and user interface domains. Additionally, it iswithin the scope of the invention to support voice activated commandsthat support similar scrub operations.

FIGS. 19 and 20 illustrate a user using a scrub technique according tothis invention. The scrub allows the user to select a photo associatedwith a pictogram and then, through one continuous, held contact with thescreen, flip through all user photos. In FIG. 19, the user has selectedthe ‘computer’ pictogram to associate with the photo shown in FIG. 19.By scrubbing to the right, the next photo of FIG. 20 is a photoassociated with the ‘office building’ pictogram. Any community commentor feedback on any photo can be displayed by an icon on the photo, andaccessed by a different movement, such as scrubbing down toward theicon. The GUI features also include any associated metadata, such astime of day, etc., and arrows showing how to move the finger to retrieveother activities.

FIGS. 21-25 illustrate a community member scrub using an Ownbey-scrubtechnique. In FIG. 21, a user presses and holds a pictogram 162 onhis/her or another user's pictogram timeline 160. The selectedpictogram-associated image 164 animates into view, while the fingerremains down. In FIG. 21, while continuing to hold, the user slides thefinger down (arrow 166) to begin scrubbing through multiple photographs.The pictogram's associated image 164 remains displayed. In FIG. 22,without lifting, the user slides the finger up (arrow 168) to reveal apictographic feedback selector 170. In FIG. 22, the user taps on thedesired pictographic feedback 172, adding it to the photo, as indicatedby notification 174 in FIG. 23. In FIG. 23, the user selects anadditional pictographic feedback 176 composing an emotional statementthat appears in FIG. 24. In FIG. 24, re-continuing the hold, the userslides finger down (arrow 180) to send the feedback and continueviewing. In FIG. 24, having sent the feedback, the user can continuescrubbing to other activities (arrow 182), all while continuing to pressthe screen. In FIG. 25, the user has continued scrubbing to a new photo184 representing or associated with a new activity of pictogram 186.

The invention further includes ranking the order the pictures arepresented within each scrub, and/or ranking the order the presentationof the pictograms associated with each user. Rank ordering can be basedon any of the many ordering criteria disclosed herein and/or known inthe art including but not limited to chronological time associated withthe set of activities, location of the activities ordered based on biasof locations, proximity to other users—either a specific user or anyusers within a user's community, proximity to a location where the lastphotograph was taken, and so forth.

The invention further includes a method of determining locations and/oractivities of users participating in a social networking service. Themethod can be used to track members and provide reminders to the trackeduser, or to provide a notification or alert/alarm to the user doing thetracking. In embodiments of this invention, locations and/or activitiesof members of a social media community are automatically and continuallytracked, such as using the methods described above. The trackedlocation/activity information is automatically displayed for each of theplurality of members on one or more of electronic devices of the othermembers, depending on the particular user settings. Each member has theopportunity to establish a triggering condition for an other one or moreof the plurality of members via her or his electronic device. Thetracking system automatically monitors the one or more members for thetriggering condition via the corresponding electronic device(s) of theother user. Upon automatically determining an occurrence of thetriggering condition, an automated communication of the occurrence ofthe triggering condition is sent to the user setting the triggeringcondition, and any other user also added as a notification recipient.

A primary motivator for the use of MPSM systems is maintaining awarenessof the current status of user's community members. Often, maintainingawareness is tantamount to knowing when a community member has met atriggering condition. Examples of a triggering condition include, butare not limited to: proximity to, arrival at, or departure from, aspecified location; and/or an activity or condition of at least one ofthe community members automatically determined using that member'selectronic device of the members, such as having a certain medicalcondition or engaging in a particular user activity or function. Thetriggering condition can be selected from automatically generatedpredetermined condition selections displayed in a user interface on theuser electronic device, or created from predetermined templates providedto and/or created by the user.

Specified locations for the triggering conditions can be absolute orrelative and/or specific or global. As used herein, absolute locationsrefers to specific geographic locations independent of the user, forexample, an address such as 111 Chestnut Street, Chicago, Ill., whilerelative locations specify user related locations such as the user's“home,” “work,” or “favorite coffee shop.” Specific locations can beabsolute or relative and specify an exact location, while globallocations indicate neighborhoods such as Chevy Chase, Md. Thus,triggering conditions based on locations, either absolute or relative,and/or specific or global can be set.

Some medical conditions can be determined by applications available onthe mobile device. For example, applications running on mobile devicesand known in the art include but are not limited to, heart ratemonitoring and temperature sensing. Additionally some medical devicesincorporate state of being applications. Regardless of the means bywhich the medically related condition is determined or tracked,triggering conditions can be specified and another user notifiedautomatically upon the determination of the condition, or a possibilitythereof.

In embodiments of this invention, the MPSM learns and derives useractivities and/or locations, such as by the methods disclosed herein.Triggering conditions related to activities and/or location proximitycan be set by the user or other users. For example, triggeringconditions can be set by a user for the purpose of being automaticallyinformed when a community member is automatically determined to beeating, shopping, or walking. Similarly, triggering conditions can beset for the purpose of being automatically informed when any one or morecommunity member is automatically determined to be near the user, alocation (e.g., restaurant, airport, or mall), or near another communitymember.

Regardless of the triggering condition set, when the community membermeets the condition, the user is notified. In one embodiment of thisinvention, the triggering condition can be set to send the alertnotification to one or more community members in addition to, or as analternative to, the user that sets the triggering condition.Notification can be accomplished by any of the multiple known in the artnotification schemes including but not limited to SMS messages, phonecalls, e-mail messages, and/or application pop-ups or pushnotifications.

FIG. 26 is a representative phone screen GUI 200 displaying a listing ofcommunity members. For each community member 202, their currentpersonally matched user information 204, including city level geographiclocation, is automatically specified. Personally matched information caninclude, without limitation, a user activity (e.g., “on the move”,playing tennis, or having coffee) and/or a user location (e.g., absoluteor relative, specific or global). The duration of the current personallymatched user information is likewise specified. Additionally, for eachcommunity member 202, a notification alert option button 210 ispresented. This alert is set by the user for the particular communitymember 202 and specifies a triggering condition to be met. It is withinthe scope of this invention to have multiple simultaneous alerts set fora particular community member and/or for multiple community members, bythe user. It is also within the scope of this invention for the user toset a triggering condition on her/himself. Once the specified triggeringcondition occurs, a notification is sent to the user. As shown in FIG.26, no alert has yet been set. Also, at the bottom of the display 200,the user's current personally matched user information 206 isidentified.

FIG. 27 shows a setting of the triggering condition, according to oneembodiment of this invention. Upon selection of the button 210associated with each community member as shown in FIG. 26, the display212 illustrating a set of triggering conditions 214 is displayed. Alsoshown at the top of the display is the current matching personalinformation 202 for the given community member. By selecting one or moretriggering conditions, alerts are set. For example, assuming a selectionof “Gets home” is made, an alert is set that will automatically activateupon the system detecting the arrival of the chosen community member athis home. FIG. 28 shows the same GUI 200 of FIG. 26, only now with a setalarm condition 216.

FIG. 29 shows a screen GUI 220 including more detailed community memberpersonally matched information. Pressing the right arrow on a particularcommunity member 202 in GUI 200 results in a display 220 that includes,without limitation, member location information, e.g., at a hotel, andduration thereof, e.g., 59 minutes, a previous location, e.g., at home,as well as additional information such as when the information was lastupdated. An optional map illustrating the location of the communitymember is likewise presented. The user has an option, by pressing thecorresponding button, to text, phone, or video conference the selectedcommunity member, as illustrated at the bottom of the display.Additionally, the ETA (expected time of arrival) option can be selected.A button 210 is also displayed on this screen.

FIG. 30 illustrates an estimated time of arrival option 222 opened uponselecting ETA button 218 in FIG. 29. As shown, similar to FIG. 29,member location information, duration thereof, time of last update, andother information, including a map, is provided. However, the estimatedtime of arrivals for that community member to various locations and/orcommunity members including the user using various modes oftransportation is computed and illustrated. The locations illustratedcan be associated to the user, to the community member, and/or any otherspecified location. As shown, for example, the community member, Ben C.,is 19 minutes by car and 1.5 hours by foot to his work. The ETAfunctionality can desirably be paired with a notification of when acommunity member leaves a location, such as the “Leaves the hotel”notification option in FIG. 27, to predict a time of arrival for ameeting, etc.

FIG. 31 illustrates detailed personally matched information for the userher/himself. As shown, the user's location and duration thereof isillustrated. Also provided are options, accessed by pressing thecorresponding button, to edit the user's places, e.g., “My Places”, orstatus, e.g., “Edit Status”, alter one's settings or completely gooffline.

In FIG. 32, the user's “My Places” user information is illustrated andcan be altered. As shown, locations associated with the user are listed.These locations were either set by a community member, includingpotentially the user her/himself, e.g., “Home—set by you”, orautomatically detected, e.g., “Home—detected”. Note that these are twodifferent home locations illustrating the option to have multiplerepeated named locations. Other locations, e.g., work and school, arealso shown but not specified precisely. Selecting the right arrow ateach location provides for the option to specify or correct the locationinformation.

In FIG. 33, the user's “Edit Status” option is illustrated. As shown,nearby locations under “your nearby places”, categories of locations,under “categories”, and general places, under places, are listed. Notethat other community members might set locations, e.g., Ana's home wasset by Isabel. Additionally, third party location information, e.g., asprovided by foursquare, is likewise used.

Multiple revenue models are supported in the MPSM domain. These includebut are not limited to advertising, support for loyalty programs, andthe selling of data, products, and services. The obvious goal ofadvertising is to generate revenue. However, a more subtle goal ofadvertisers is to change the user's behavior. That is, if a user alwaysgets a cup of coffee at 8:45 am from one particular vendor,advertisements from different vendors seek to influence the user to gethis/her coffee from them rather than from his/her traditional vendor.Such advertisements not only help generate revenue, they can train thesystem in multiple ways. Such training supports targeted marketing,namely, the selection of advertisements that best match the target user.For example, but not limited to, consider showing coffee advertisementsto the user in the abovementioned case. If an advertisement promises alarger coffee volume of the exact same coffee that the traditionalvendor serves at an identical price but sales at the new vendor do notincrease, then coffee volume is not a discriminator for the user.Similarly if lower prices do not alter the user's purchases, then priceis not a concern. Such training can influence other targeted marketing.For example, if the user switched coffee vendors once valet parking wasadvertised by the new vendor then when offering sushi restaurantadvertisements to this particular user, restaurants that provide valetparking should be ranked higher.

The user specific location activity data stored can be used to improveloyalty programs. Typically, restaurants, stores, airlines, hotelchains, etc. all have loyalty programs; many of these loyalty programsrely on membership numbers and recording mechanisms. For example,grocery stores require each purchaser to enter their identity numbereach time they purchase a good. Other vendors register credit cardnumbers and track relevant purchases using these registered cards.Registering credit cards or utilizing a membership number is fraughtwith difficulties, not the least of which involves having a mechanism torecord an activity. For example, a user might pay with cash; this wouldnot issue a credit card transaction, and hence, would not record thetransaction. Similarly, unless a user identified him/her-self usingtheir membership number, their transaction would not be recorded.Ideally, a vendor would want to recognize the user independently of theuser's actions. The disclosed invention supports user tracking withoutrequiring user identification activity. Loyalty programs of vendors,such as but not limited to a restaurant, bar, gym, etc., establishmentsinvolve repetitive visits. A user of a MPSM system that frequents thatestablishment will generate a lengthy log of such visits. The back-endsystem supporting the application will thus have records that determinethe identity of the user, the frequency and duration of each visit, etc.This information can be provided or sold to the vendors for their loyalprograms. The information provided to the vendor can be marketed via asubscription service or on demand. Regardless, the information gatheringneeded to support both marketing plans does not suffer from theabovementioned limitations.

Embodiments of this invention maintain user specific and system widelocation activity data. These data are valuable to many vendors for manydiverse applications. Thus, one source of revenue is the selling of thecollected and derived data. To maintain user satisfaction and trust,privacy concerns must be addressed.

The notification of the present location of users to their community iswithin the scope of this invention. However, also within the scope ofthis invention is the notification of current locations of users tothird parties. Third party vendors, such as but not limited to deliveryservices, lose significant funds should they need to coordinate with auser at a particular location at a particular time and the user not bethere. Thus, on either a pay-per-use basis or on a subscription servicebased payment, locations of users can be provided to interested vendors.Inquiry of a user's location can be made via many of the knownapproaches in the art. Potentially for an additional fee, pushednotifications to a third party vendor of an arrival of a specific usercan likewise be supported. Users can also be allowed to block theproviding of their current location to non-community members includingthird party vendors, either for free or for a fee.

Charging for the triggering of alerts and their respective notificationsis also within the scope of this invention. Revenue can be generated ona pay-per-use basis for each resulting notification. That is, for eachnotification sent, a fee is charged. Additionally to, or instead of, apay-per-use basis, charging can be made on a subscription basis. In sucha case, a subscription fee is charged for the alert-based notificationservice on a periodic basis. Succinctly, notification schemes cangenerate revenue for each triggering condition basis and/or viasubscription services.

The system of this invention desirably maintains location and activityinformation for all users. A non-limiting example of a product that canbe generated from these data is a pictorial landscape of locations andactivities. That is, based on collected location and activityinformation, suggestions for trip activities along with pictures,itineraries, and route suggestions can be sold both in printed form orelectronic format. These pictorial summaries can be sold to the consumerdirectly or to organizations such as hotels, book publishers, etc. tomarket as their own; this form of indirect sales renders the inventionas a secondary information source provider. In both cases, revenue isgenerated. This information can be made available as a real-timeinformation source. Fees can be charged per request or can serve as asubscription service.

User requests or location inquiries are within the scope of thisinvention. A user can query information, possibly stored at the centralserver, regarding activities associated with a given location.Similarly, a user can inquire which location supports a given one ormore activities. The information can be the learned information from allusers. Optionally, a fee per query can be charged.

Additional services can also be provided. The information maintained isreal-time and thus can be used to identify the availability ofindividuals and resources. A non-limiting example includes an idlelimousine chauffeur located near a user who is in need oftransportation; these two users can be connected to provide the neededservice, namely transportation. By identifying available users or moregenerally resources, desiring users can be connected to the availableresources. Again, fees for this service can be charged on a per requestbasis or as a subscription service. An additional service involvesreal-time traffic information. As users are continuously on the move,traffic on routes taken can be assessed. Again, fees for this servicecan be charged on a per request basis or as a subscription service. Afurther additional service involves general data aggregation. User dataaggregation as disclosed earlier can be sold to data aggregators such ascensus takers, pollsters, etc. These data can be historical, real-time,categorized data based on any and all stored attributes, etc. Again,fees for this service can be charged on a per request basis or as asubscription service.

Thus, the invention provides a method and system for tracking userlocations without the energy consumption of GPS systems. The inventioncan be implemented with social media systems for sharing locationsand/or activities of a user participating in a social networkingservice. The method is executed by a computer system, preferable througha mobile device, and includes automatically determining a user locationand optionally receiving user information about the destination,automatically associating the user information with the destination, andautomatically sharing the user information in the social networkingservice upon further user arrivals at the destination prior to receivingany additional user information. The method and system can provideinformation and other benefits to both the user and third-parties aboutthe user's activities and locations of these activities.

The invention illustratively disclosed herein suitably may be practicedin the absence of any element, part, step, component, or ingredientwhich is not specifically disclosed herein.

While in the foregoing detailed description this invention has beendescribed in relation to certain preferred embodiments thereof, and manydetails have been set forth for purposes of illustration, it will beapparent to those skilled in the art that the invention is susceptibleto additional embodiments and that certain of the details describedherein can be varied considerably without departing from the basicprinciples of the invention.

What is claimed is:
 1. A method of determining locations and/oractivities of users participating in a social networking service, themethod executed by a computer system and comprising: receiving atriggering condition from a first user through a first user electronicdevice; automatically monitoring for the triggering condition within thesocial networking service; automatically receiving location informationfor a second user that is within the social networking service through alocation module of a second user electronic device at each of aplurality of locations as the second user electronic device travels tothe locations; automatically placing the location module into a sleepmode between the locations, wherein the location module goes into thesleep mode: after automatically determining location information, andduring extended travel upon an automatically determined rate of travelexceeding a predetermined threshold; automatically awakening thelocation module at each of the locations upon receipt of a locationtransmission; automatically determining an occurrence of the triggeringcondition by the second user through the second user electronic device;and automatically communicating the occurrence of the triggeringcondition to the first user through the first user electronic device. 2.The method of claim 1, wherein the triggering condition comprises thesecond user electronic device's proximity to, arrival at, or departurefrom, one of the locations.
 3. The method of claim 2, wherein the one ofthe locations is a specific location identified by the first user in thetriggering condition.
 4. The method of claim 1, wherein the triggeringcondition is an activity or condition of the second user automaticallydetermined using the second user electronic device.
 5. The method ofclaim 4, further comprising: automatically determining a positionallocation of the second user; automatically determining contextinformation about the positional location without input by the seconduser; automatically deducing as user information a location type and/oruser activity of the positional location from the context information;and automatically analyzing the user information for the occurrence ofthe triggering condition.
 6. The method of claim 1, wherein thecommunicating the occurrence comprises automatically providing a timeand/or distance between the first user and the second user.
 7. Themethod of claim 6, wherein the triggering occurrence comprises thesecond user moving between locations.
 8. The method of claim 1, whereinthe triggering condition is selected from automatically generatedpredetermined condition selections displayed in a user interface on thefirst user electronic device.
 9. The method of claim 1, furthercomprising tracking and updating a positional location of the seconduser electronic device upon the occurrence of the triggering condition.10. The method of claim 1, further comprising automatically andcontinually tracking locations of an electronic device of each member ofa social media community of the first user.
 11. The method of claim 1,wherein the location module comprises: a timer counter configured tomonitor a duration of time since each awakening, wherein whenever a timesince the awakening exceeds a predetermined time allocation, thelocation module is placed into a sleep mode; or a stationary counterconfigured to monitor a duration of time since a previous detectedmovement of the mobile user.
 12. The method of claim 1, furthercomprising: receiving with the location module a first locationtransmission for a first one of the locations; incrementing a timercount configured to monitor a duration of time, wherein whenever a timeexceeds a predetermined time allocation, the location module is placedinto the sleep mode; incrementing a stationary counter configured tomonitor a duration of time since a previous detected movement of themobile user; receiving a second location transmission of a second one ofthe locations; comparing the second one of the locations to the firstone of the locations; calculating a rate of travel when the second oneof the locations differs from the first one of the locations, wherein ifthe rate of travel exceeds a predetermined threshold the location moduleis placed into the sleep mode; receiving a third location transmissionof a third one of the locations; comparing the third one of thelocations to at least one of the first one of the locations or thesecond one of the locations; further incrementing the stationary counterwhen the second or third one of the locations is the same as the firstone of the locations; determining an arrival event upon reaching apredetermined arrival threshold of the stationary counter; storing dataof the locations; and placing the location module into the sleep mode.13. A method of determining locations and/or activities of usersparticipating in a social networking service, the method executed by acomputer system and comprising: automatically and continually trackinglocations of member electronic devices of a plurality of members of asocial media community of a first user, wherein the tracking locationsincludes: automatically receiving location information for each of themember electronic devices through a location module of the each of themember electronic devices at each of a plurality of locations as themember electronic devices travel to the locations; automatically placingthe location module into a sleep mode between the locations, wherein thelocation module goes into the sleep mode: after automaticallydetermining location information, and during extended travel upon anautomatically determined rate of travel exceeding a predeterminedthreshold; automatically awakening the location module at each of thelocations upon receipt of a location transmission; automaticallydisplaying location information for each of the plurality of members ona first user electronic device; receiving a triggering condition for oneof the plurality of members from the first user through the first userelectronic device; automatically determining an occurrence of thetriggering condition by automatically monitoring a corresponding memberelectronic device of the one of the plurality of members; andautomatically communicating the occurrence of the triggering conditionto the first user through the first user electronic device.
 14. Themethod of claim 13, wherein the triggering condition comprises thesecond user electronic device's proximity to, arrival at, or departurefrom, a location.
 15. The method of claim 14, wherein the location is aspecific location identified by the first user in the triggeringcondition.
 16. The method of claim 13, wherein the triggering conditionis an activity or condition of the one of the plurality of membersautomatically determined using the member electronic device of the oneof the plurality of members.
 17. The method of claim 16, furthercomprising: automatically determining context information about thelocation information for the one of the plurality of members withoutmanual input therefrom; automatically deducing as user information alocation type and/or user activity of the location from the contextinformation; and automatically analyzing the user information for theoccurrence of the triggering condition.
 18. The method of claim 13,wherein the communicating the occurrence comprises automaticallyproviding a time and/or distance between the first user and the one ofthe plurality of members.
 19. The method of claim 18, wherein thetriggering occurrence comprises the one of the plurality of membersmoving between locations.
 20. The method of claim 13, further comprisingautomatically communicating the occurrence of the triggering conditionto member electronic devices of several of the plurality of membersother than the one of the plurality of members.